import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
import 'amfe-flexible'// 移动端适配插件
import './VantRegister'// 为了整洁把注册的组件抽离出去
// import { allChannelListAPI } from '@/api'
import directive from './utils/directive'
import hljs from 'highlight.js' // hljs对象
import 'highlight.js/styles/default.css'

Vue.directive('highlight', function (el) { // 自定义一个代码高亮指令
  const highlight = el.querySelectorAll('pre, code') // 获取里面所有pre或者code标签
  highlight.forEach((block) => {
    hljs.highlightElement(block) // 突出显示这些标签(以及内部代码, 会自动识别语言)
  })
})

Vue.use(directive)

/*
try {
 可能会报错的代码(例如await)
} catch (err) {
 try里代码报错, 捕捉到这里执行
}
因为axios是一个promise对象await后面得不到代码错误需要
在catch里面继续捕获
*/
// const myFn = async () => {
//   try { await allChannelListAPI() } catch (err) {
//     console.log(err)
//   }
// }
// myFn()

Vue.config.productionTip = false

new Vue({
  router,
  store,
  render: (h) => h(App)
}).$mount('#app')
